Along with the increasing requirement to applications of General Packet Radio Service (GPRS), it has become a common concern of mobile communications operators about how to charge for the mobile packet data service reasonably and accurately.
The current traffic differentiation and traffic-type awareness of the GPRS network can only reach the level of Access Point Name (APN) and Packet Data Protocol (PDP) context, however, in practice, it is quite possible that several parallel service data flows (As to one packet data service, the data amount a user consumes when using the packet data service is referred to as service data flow, which consists of several packet data flows, i.e. IP data flows. One PDP context can bear several different services) may use the same PDP context as the bearer and different services may adopt different charging policies. In view of the above, 3GPP provides a new charging method for GPRS bearer, i.e., a method of service data Flow Based Charging (FBC). Obviously, the charging granularity of FBC is smaller than that of PDP context, which makes it possible to provide operators and service providers with more varied means of charging.
A description of the FBC is hereinafter given according to the protocol of 3GPP TS23.125. The system structure of the FBC is shown as FIGS. 1 and 2, wherein FIG. 1 is a schematic diagram illustrating the system structure of the FBC supporting online charging, which mainly includes an Online Charging System (OCS), a Charging Rule Function (CRF), a Traffic Plane Function (TPF), an Application Function (AF), and a Charging Gateway Function/Charging Collection Function (CGF/CCF). And FIG. 2 is a schematic diagram illustrating the system structure of the FBC supporting offline charging, which mainly includes the CRF, the TPF, the AF and the CGF/CCF.
Each of the functions constituting the above FBC system is described, respectively, as follows:
1. TPF
The TPF is the entity to bear IP flows and is able to differentiate data packets belonging to different service data flows. When a bearer has some changes, for example, when creating, modifying, or deleting the bearer, the TPF will send a request to the CRF for charging rules via the interface Gx and the following information may be carried in the request: information related with user and terminal, e.g., Mobile Station ISDN (MSISDN), International Mobile Equipment Identity & Service Version (IMEISV); bearer characteristics, e.g., Quality of Service (QoS); and information correlative with the network, e.g., Mobile Network Code (MNC), Mobile Country Code (MCC). the TPF performs packet filtering and charging on the corresponding service data flow according to the charging rule returned by the CRF. The charging may include a series of charging correlative actions, such as collecting and generating charging information, and submitting the generated charging information.
One TPF may be served by one or more CRFs. Specifically, TPF may select a CRF to provide service according to the identity information of User Equipment (UE). Moreover, the TPF supports pre-defined charging rules and pre-defined filters.
2. CRF
the CRF is the entity to store charging rules, supporting both dynamic and static charging rules. The so-called dynamic charging rule means the charging rule is generated in real-time according to the service principles; and the static charging rule means that the charging rule remains unchanged while the user is using the data service, and the static charging rule can be dynamically activated. the CRF may select appropriate charging rules according to the input information received from the TPF, the AF, and the OCS, and send the selected charging rules to the TPF when it receives a request from the TPF or a pre-defined event is triggered.
One CRF may communicate with multiple TPFs, i.e. provides service for multiple TPFs.
3. AF
The AF represents all the entities associated with application, and may belong to the operator itself or a third-party service provider. The AF provides the CRF with appropriate application or service information which makes the CRF can select or configure the corresponding charging rules. The information provided by AF includes: identity information of service data flow, which may be a wildcard of identity information; information for charging rule selection; application/service identifier; application event identifier; type of stream, e.g. video, audio; and data rate of stream, wherein the type of stream and the data rate of stream are optional.
One AF may communicate with several CRFs. AF may select to interact with a CRF according to the identity information of the UE.
4. OCS
The OCS is for online charging function, containing Credit Control (CC) which is for use of executing credit control. the CC is usually employed within an online charging system only. The OCS provides the CRF via the interface Ry with the input information for selecting charging rules.
5. CCF/CGF
The CCF/CGF is for use of further processing the charging data submitted by the TPF so as to generate bills.
The foregoing system structure of the FBC is applicable to various radio access techniques, such as 3GPP, 3GPP2, WLAN, etc. Take 3GPP as an example, if the bearer network is GPRS, the TPF is a logical function allocated to the GGSN, and AF is an Application Gateway or Application Server in Packet Data Network (PDN). When an IP Multimedia Subsystem (IMS) uses the GPRS network as its bearer network, AF will be a Proxy Call Session Control Function (P-CSCF), and in this case, the CRF is a newly added logical entity.
Based on the foregoing system structure of the FBC, operations performed by the TPF will be described by taking the implementing procedures of offline charging and online charging as examples.
FIG. 3 shows the flowchart of offline charging, which includes the steps of:
Step 301-step 302: the UE sends an establishing bearer service request message to the TPF, and the TPF sends a charging rule request message to the CRF after receiving the message.
Step 303-step 304: the CRF determines charging rules based on the information provided in the charging rule request received from the TPF. If there is also input information from the AF and/or the OCS for determining the charging rules, the CRF will select charging rules by the input information from the TPF and the input information from the AF and/or the OCS for use of determining the charging rule. Then the CRF provides the selected charging rules to the TPF. A charging rule may include: charging mode indication of service data flow, e.g. indication of online charging or offline charging, the recording mode of offline charging, e.g. volume based, or time based or both, charging key, filter(s) of service data flow, priority, and identifier of the charging rule.
Wherein, the filter is for use of differentiating data packets which belong to a specific service data flow. The basic structure of a filter is an IP 5 tuple, including source IP address, destination IP address, source port number, destination port number and protocol ID of the protocol above IP. The charging key is for use of determining the charging rate. The priority is for use of determining which charging rule is to be used when there exist overlapping charging rules. The identifier of charging rule is for use of identifying a specific charging rule. the CRF just needs to provide the identifier corresponding to a charging rule instead of a complete charging rule to the TPF every time if the TPF has already configured the corresponding charging rule.
Step 305-step 306: the TPF performs appropriate actions as indicated by the received charging rule, e.g. applying or deleting the charging rule, and then responses to the UE with establishing bearer service accept message.
Step 307-step 308: the UE carries out service data transmission after receiving the establishing bearer service accept message, and the TPF performs counting and statistic operation for the service data flow on which the charging rule is applied, i.e. after filtering, performs charging operation which contains collecting and generating charging information, and submits the generated charging information in a certain format, for example, filling in a Call Detail Record (CDR), to the charging-associated entities to generate the final bill of the user.
FIG. 4 shows the flowchart of online charging, which includes the steps of:
Step 401-step 402: the UE sends an establishing bearer service request message to the TPF, and the TPF sends a charging rule request message to the CRF after receiving the establish bearer service request.
Step 403-step 404: the CRF determines charging rules based on the information provided in the charging rule request received from the TPF. If there is also input information from the AF and/or the OCS for determining the charging rules, the CRF will select charging rules by combining the input information from the TPF and the input information from the AF and/or the OCS for determining the charging rule. Then the CRF provides the selected charging rules to the TPF. A charging rule may include: charging mode indication of service data flow, e.g. indication of online charging or offline charging, the recording mode of offline charging, e.g. volume based, or time based or both, charging key, filter(s) of service data flow, priority, and identifier of charging rule.
Step 405: the TPF performs appropriate actions as indicated by the received charging rule, e.g., applying or deleting the charging rule.
Step 406-step 408: the TPF sends a credit request message to the OCS, the OCS provides the TPF with the credit information related to the UE, and then the TPF responses to the UE with an establishing bearer service accept message.
Step 409-step 410: UE starts to transmit service data after receiving the establishing bearer service accept message. the TPF performs counting and statistical operation for the service data flow on which the charging rule is applied, i.e., after filtering, performs charging operation which contains collecting and generating charging information, and submits the generated charging information in a certain format, for example, filling in the CDR, to the charging-associated entities to generate the final bill of the user.
It can be seen from step 307-step 308 of the above offline charging procedure and step 409-step 410 of the online charging procedure that the TPF, after filtering the received service data flow, will generate the charging information and then submit the charging information to the charging-associated entities in a certain format to generate the final bill. The charging-associated entities may include a Charging Gateway (CG) and a Billing System (BS). The CG will combine the received charging information before sending them to the BS, which will generate the final bill.
In practice, however, not all the information collected and submitted by the TPF is useful for generating final bills of users.